precision mediump float;
uniform sampler2D  u_fire;
uniform sampler2D  u_firemask;
uniform sampler2D  u_firemap;
uniform float  increase;

varying vec2 v_uv;
void main()
{
	vec2 Displacement_offset = texture2D(u_firemap, v_uv).rg; 
	vec2 Tex_coords_displaced = v_uv + (0.5 * increase * Displacement_offset - 0.1 * increase);
    vec4 fire_color = texture2D (u_fire, Tex_coords_displaced);
	vec4 AlphaValue = texture2D(u_firemask, v_uv);
    gl_FragColor = fire_color * (1.0, 1.0, 1.0, AlphaValue.r);
}